Automated teller machines (ATMs) are known in the prior art. Automated teller machines may be used by consumers to carry out banking and other functions. Such functions may include for example receiving cash, making deposits, checking account balances, cashing checks, printing checks, printing statements, printing money orders and other functions. For purposes of this disclosure an automated teller machine will be considered to include any device operative to carry out one or more types of financial transactions for users of the machine.
Automated teller machines usually include one or more internal processors which carry out software instructions and enable operation of the machine. Presently most automated teller machine software is proprietary to the particular machine manufacturer. As a result the software which causes one manufacturer's automated teller machine to operate will not operate another manufacturer's automated teller machine.
Recently organizations have begun to develop standards related to devices commonly found in automated teller machines. These standards provide a generally uniform set of instructions for operating each particular type of device which is likely to be found in an automated teller machine. For example these standards may provide a generally uniform set of instructions for operating a cash dispenser to dispense a bill. As a result an entity wishing to write software to operate an automated teller machine may theoretically write a suitable software application for controlling the devices in the machine by writing the software application in accordance with the standard. In addition software written in accordance with the standard should be able to operate in automated teller machines made by different manufacturers. An example of such a standard is known as the WOSA-XFS or XFS standard which has been developed by a committee of the CEN. Other standards are also being discussed and developed.
In order for the standards to have greater value, manufacturers of automated teller machines would need to produce software that will enable the devices in their machines to operate in response to the standardized instructions. Software which enables a particular manufacturer's transaction function devices in an ATM to operate in accordance with a standard is referred to in an XFS environment or other standardized environments, as a service provider or SP software. Some manufacturers of automated teller machines have developed SP software for the transaction function devices included in their machines. However, certain manufacturers place restrictions on the availability of their SP software. As a result it is not generally feasible for a software developer to develop a hardware independent software application for operating automated teller machines produced by different manufacturers.
Further, the ability of application developers to develop applications may present issues related to maintaining the proper operation of the ATM. The ability of third party developers unassociated with an ATM manufacturer to write software that can be loaded onto and operate the ATM may present issues as to whether the software loaded on the ATM is authorized as well as whether such a developer has met commitments that they may have related to the manufacturer or other third parties.
A further issue may arise with regard to entities that wish to operate devices in conjunction with an automated teller machine that are not devices for which standard service provider interfaces have been developed and/or devices which require different relationships to other ATM transaction function devices than a device normally associated with such a service provider interface. In such cases it may not be cost effective for an ATM manufacturer to develop or support service provider software for devices that are not normally included in an automated teller machine. As a result the capabilities of automated teller machines to work in conjunction with such external devices may not be developed.
Further issues may arise when software components provided by different entities are installed on an ATM. Uncertainty may arise as to which software component (or transaction function device) is the cause of a malfunction of the ATM.